package org.jeecgframework.boot.springaimcpservice.service;

import jakarta.annotation.Resource;
import org.jeecgframework.boot.springaimcpservice.common.Result;
import org.springframework.ai.tool.annotation.Tool;
import org.springframework.stereotype.Service;

@Service
public class StatsQueryToolService {

    @Resource
    private IStatsQueryService statsQueryService;

    /**
     * 基于Spring AI的统计查询工具
     * 该工具能够根据用户的自然语言问题自动生成SQL查询，执行查询，并使用AI分析结果
     * 适用于各种统计分析场景，如专家人数统计、盾构机应用情况分析等
     * 
     * @param naturalLanguageQuery 用户的自然语言查询问题
     * @return 包含查询结果和分析的响应
     */
    @Tool(description = "基于Spring AI的统计查询工具，能够根据用户的自然语言问题自动生成SQL查询，执行查询，并使用AI分析结果。适用于各种统计分析场景，如专家人数统计、盾构机应用情况分析等。")
    public Result<String> statsQueryTool(String naturalLanguageQuery) {
        return statsQueryService.executeStatsQuery(naturalLanguageQuery);
    }
}